Skip to content

Conversation

@dependabot
Copy link
Contributor

@dependabot dependabot bot commented on behalf of github Jan 5, 2026

Dependabot compatibility score

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


Dependabot commands and options

You can trigger Dependabot actions by commenting on this PR:

  • @dependabot rebase will rebase this PR
  • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
  • @dependabot merge will merge this PR after your CI passes on it
  • @dependabot squash and merge will squash and merge this PR after your CI passes on it
  • @dependabot cancel merge will cancel a previously requested merge and block automerging
  • @dependabot reopen will reopen this PR if it is closed
  • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
  • @dependabot show <dependency name> ignore conditions will show all of the ignore conditions of the specified dependency
  • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    You can disable automated security fix PRs for this repo from the Security Alerts page.

---
updated-dependencies:
- dependency-name: aiohttp
  dependency-version: 3.13.3
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <[email protected]>
@dependabot dependabot bot added dependencies Pull requests that update a dependency file python Pull requests that update python code labels Jan 5, 2026
@gbanasiak gbanasiak requested a review from a team January 12, 2026 08:43
@fressi-elastic fressi-elastic self-requested a review January 12, 2026 11:08
@gbanasiak
Copy link
Contributor

gbanasiak commented Jan 12, 2026

@gareth-ellis I've configured StaticTransport class to inherit from asyncio.Transport in ea8ce3a as it should based on type hints in aiohttp.client_proto.ReseponseHandler. This forced introduction of dummy implementation of a number of methods to pass linter checks.

The key modification remains unchanged though. StaticTransport now calls protocol's connection_lost() for immediate closure. Otherwise calling async ES client close() led to a hang when using static responses (see repro code below). I think the relevant aiohttp modification came in aio-libs/aiohttp#11107.

import asyncio
import logging

from esrally import log
from esrally.client.factory import EsClientFactory


async def main():
    log.install_default_log_config()
    log.configure_logging()
    logger = logging.getLogger(__name__)

    factory = EsClientFactory(
        hosts=[{"host": "localhost", "port": 9200}],
        client_options={"static_responses": "/<path>/src/rally/it/resources/static-responses.json"}
    )
    client = factory.create_async()
    with client.new_request_context():
        await client.info()
    await asyncio.get_event_loop().shutdown_asyncgens()
    await client.close()
    logger.debug("Client closed")


if __name__ == "__main__":
    asyncio.run(main(), debug=True)

cc @fressi-elastic

@gbanasiak gbanasiak merged commit c3a3e22 into master Jan 12, 2026
26 checks passed
@gbanasiak gbanasiak deleted the dependabot/pip/aiohttp-3.13.3 branch January 12, 2026 13:34
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies Pull requests that update a dependency file python Pull requests that update python code

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants